package com.yourenbang.lingyun.transaction.constant;


import com.yourenbang.lingyun.constants.enums.PlatNoEnums;
import com.yourenbang.lingyun.constants.enums.fund.AccountType;

/**
 * 钱包列表
 */
public class WalletList {

    /**
     * 盟友钱包
     */
    public enum AllyWalletList {

        ALLY(AccountType.ALLY.getShortAccountNo(), "激活返现", true, true),
        REACH(AccountType.ALLY_REACH.getShortAccountNo(), "达标奖励", true, true),
        CREDIT_COMMISSION(AccountType.CREDIT_COMMISSION.getShortAccountNo(), "推卡奖励", true, true),
        SHOPPING_SCORE(AccountType.SHOPPING_SCORE.getShortAccountNo(), "购物返现", true, true),
        PROFIT(AccountType.ALLY_PROFIT.getShortAccountNo(), "收益", true, true),
        SUB_TEAM_ACTION(AccountType.SUB_TEAM_ACTION.getShortAccountNo(), "活跃度", true, true),
        CONVERSION(AccountType.CONVERSION.getShortAccountNo(), "兑换金", true, true);

        AllyWalletList(String accountTypeSuffix, String walletName, Boolean klksFlag, Boolean yxyFlag) {
            this.accountTypeSuffix = accountTypeSuffix;
            this.walletName = walletName;
            this.klksFlag = klksFlag;
            this.yxyFlag = yxyFlag;
        }


        private String accountTypeSuffix;       //账户类型后缀
        private String walletName;              //钱包名称
        private Boolean klksFlag;               //快收是否可见
        private Boolean yxyFlag;

        /**
         * 是否显示
         */
        public Boolean isShow(Short platNo) {
            if (PlatNoEnums.KLKS.isEquals(platNo)) {
                return this.klksFlag;
            } else if (PlatNoEnums.YXY.isEquals(platNo)) {
                return this.yxyFlag;
            } else {
                return false;
            }
        }

        public String getAccountTypeSuffix() {
            return accountTypeSuffix;
        }

        public String getWalletName() {
            return walletName;
        }
    }

    /**
     * 商户钱包
     */
    public enum MerWalletList {

        MER(AccountType.MER.getShortAccountNo(), "商户奖励", true, true),
        MER_ACTIVITY(AccountType.MERCHANT_FROM_BOSS.getShortAccountNo(), "活动奖励", true, true),
        SHOPPING_SCORE(AccountType.SHOPPING_SCORE.getShortAccountNo(), "购物返现", true, true),
        CONVERSION(AccountType.CONVERSION.getShortAccountNo(), "兑换金", true, true);

        MerWalletList(String accountTypeSuffix, String walletName, Boolean klksFlag, Boolean yxyFlag) {
            this.accountTypeSuffix = accountTypeSuffix;
            this.walletName = walletName;
            this.klksFlag = klksFlag;
            this.yxyFlag = yxyFlag;
        }


        private String accountTypeSuffix;       //账户类型后缀
        private String walletName;              //钱包名称
        private Boolean klksFlag;               //快收是否可见
        private Boolean yxyFlag;

        /**
         * 是否显示
         */
        public Boolean isShow(Short platNo) {
            if (PlatNoEnums.KLKS.isEquals(platNo)) {
                return this.klksFlag;
            } else if (PlatNoEnums.YXY.isEquals(platNo)) {
                return this.yxyFlag;
            } else {
                return false;
            }
        }

        public String getAccountTypeSuffix() {
            return accountTypeSuffix;
        }

        public String getWalletName() {
            return walletName;
        }
    }
}
